package core

import (
	"github.com/sirupsen/logrus"
	"go_blok/server/config"
	"gopkg.in/yaml.v3"
	"os"
)

func ReadConfig() *config.Config {
	// 1. 读取文件时检查错误（原代码忽略了此处错误）
	byteData, err := os.ReadFile("E:\\openAPP\\GoLand 2023.3.8\\userData\\go_blok\\server\\config\\config.yaml")
	if err != nil {
		logrus.Fatalf("读取配置文件失败（路径或权限问题）: %v", err)
	}

	// 2. 初始化配置结构体指针（原代码为 nil 指针，无法反序列化）
	var c = &config.Config{} // 改为初始化非 nil 指针

	// 3. 反序列化并检查错误（保持原逻辑）
	if err := yaml.Unmarshal(byteData, c); err != nil {
		logrus.Fatal("配置文件反序列化失败", err)
	}
	logrus.Infof("读取配置文件成功 %s", "E:\\openAPP\\GoLand 2023.3.8\\userData\\go_blok\\server\\config\\config.yaml")
	return c
}
